草庐IT

MySQL ODBC 32 与 64 位

全部标签

windows - Microsoft Windows 64 位应用程序开发最佳实践安装文件夹

我的问题是供应商向我提供了一个64位应用程序(打包在一个64位安装程序中),但它会安装到x86(程序文件)文件夹中,他一直告诉我它没问题,但我希望它安装在程序文件目录;因为32位版本会这样做,并且应用程序的脚本是基于此假设开发的。谁能告诉我Microsoft为64位应用程序推荐的最佳实践(链接)。提前致谢。 最佳答案 这可能有帮助:关于64位操作系统上的WindowsInstallerhttp://msdn.microsoft.com/en-us/library/aa367451.aspx您的供应商是否通过MSI文件安装应用程序?如

windows - *A Win32 API 调用是否仍然相关?

我仍然看到有关使用LPTSTR/TCHAR类型等的建议,而不是LPWSTR/WCHAR。我相信Unicode的东西在Win2k中得到了很好的介绍,坦率地说,我不再为Windows98编写代码了。(当然,特殊情况除外。)考虑到我不关心Windows98(或者更不用说ME),因为它们是十年前的操作系统,是否有任何理由使用兼容性TCHAR等类型?为什么仍然建议人们使用TCHAR-它比直接使用WCHAR有什么好处? 最佳答案 如果有人告诉您要遍历1,000,000行非_UNICODEC++,其中大量声明使用char而不是wchar_t或TC

c++ - 打印机驱动程序开发 - 从 32 位到 64 位

我开发了一个为32位系统编译的驱动程序。该驱动程序基于unidriver。有谁知道要使驱动程序与64位兼容需要什么?如果有的话,我需要对代码做哪些更改?还是只需要用64位版本的DDK编译它?提前致谢。努诺 最佳答案 第一步是使用VisualStudio打开项目并添加x64配置。然后,测试并查看它是否构建(可能不会)。最常见的错误(我遇到过)是这些:DWORD->DWORD_PTR+所有相关的具有长版本的Win32api函数指针截断:将在msvc上发出警告,在gcc上发出错误:在适用的情况下将long/int替换为(u)intptr_

c - shellexec 和 c :\program files - x86 and x64 portability

我正在修改一个开源GUI(用c编写)以将新菜单项添加到托盘应用程序。新的菜单项在程序根目录c:\programfiles目录中执行一个文件(update.exe)。我正在使用shellexec(),它在x86上运行良好,但由于x64上的路径不同-c:\programfiles(x86),它无法加载。我想使用一些像%programfiles%这样的环境变量的效果。对此有什么优雅的解决方案?或者,我确实可以更改update.exe文件的存储位置。将它放在“程序文件”中似乎是最合乎逻辑的。对于上面的问题,它应该放在程序文件之外吗?如果是,在哪里? 最佳答案

python - 在 win32 中读取符号链接(symbolic link)/连接点的目标(通过 Python)

任务及背景:在win32平台中创建、回读、删除指向目录的链接(截至目前)。我的python代码中遵循的方法是按顺序一种。尝试创建真正的符号链接(symboliclink),如果支持(通过mklinkcmd)b.如果不受支持,回退到创建连接点,如果它受支持(通过linkdcmd)阅读和删除遵循相同的方法。问题:符号链接(symboliclink)和juncpt的创建和删除都很简单,但我不知道如何读取目标,即指向目录。进度:一种。对于连接点,我可以使用“linkd”并以丑陋的方式解析标准输出以获取目标目录。b.对于符号链接(symboliclink),似乎没有这样的解决方案。C。我看到py

windows - 在 Amazon EC2 Windows 2008 镜像上运行 Win32 可执行文件

有没有人试过在Amazon的Windows2008Server镜像上运行Win32可执行文件?我曾尝试过,但亚马逊的Windows2008服务器镜像显示可执行文件不是Win32。然后我在本地WindowsXP和Windows7机器上尝试了相同的可执行文件,它可以正常安装。有没有人有类似的经历?谢谢! 最佳答案 如果在打开文件时出现错误,点击开始/运行,然后输入并确认以下命令:regsvr32/iSHELL32.DLL其他原因请查看这篇文章:.exeisnotavalidWin32application

c++ - 64位windows文件打开

我正在尝试使用对话框在我的程序中打开一个文件。这在32位系统上完美运行,但是当我尝试在64位系统上使用它时,它无法打开文件。我发现如果试图打开的文件与我的程序位于同一目录中,它就可以正常工作。但是,尝试从另一个文件夹打开文件根本不起作用。因此,我尝试将文件复制到程序文件夹中。这在32位上也能正常工作,但在64位系统上根本不起作用。有什么想法吗?charcwdl[500];getcwd(cwdl,500);stringmystring=string(cwdl);CFileDialogfileDlg(TRUE,NULL,NULL,OFN_FILEMUSTEXIST|OFN_HIDEREAD

C++:将 __int64 转换为 unsigned long

我想在Windows和Linux中使用以下函数,但我不确定如何将__int64转换为unsignedlong。像我一样投值安全吗?getTimeInMilliseconds(){#ifdef_WIN32staticconst__int64magic=116444736000000000;//1970/1/1SYSTEMTIMEst;GetSystemTime(&st);FILETIMEft;SystemTimeToFileTime(&st,&ft);//in100-nanosecs...__int64t;memcpy(&t,&ft,sizeoft);return(unsignedlon

C++ Win32 单选按钮背景颜色

所以首先我使用的是WindowsAPI,没有特殊的库。我用这段代码创建了一个单选按钮:g_hRadioButton=CreateWindowEx(0,"BUTTON","RadioButton",WS_CHILD|WS_VISIBLE|BS_RADIOBUTTON,10,55,120,25,hWnd,(HMENU)RADIOBUTTON,GetModuleHandle(NULL),NULL);现在主窗口的背景是黑色的,所以我希望文本是白色的,背景是透明的。我已经尝试检查WM_CTLCOLORBTN和WM_CTLCOLORSTATIC消息。这是我的代码:caseWM_CTLCOLORBT

windows - 使用依赖 DLL 在 Windows 7 上运行 32 位应用程序

我有一个简单的32位应用程序正在运行。它使用Qt和其他库。找出list后,我有一个包含应用程序、list和相关DLL的文件夹。直接从USB内存棒在Windows764位下的目标机器上运行它。将其复制到D:\驱动器上的一个文件夹中,它就可以工作了。将其复制到Programfiles(x86)下的文件夹中,我得到:R6034.AnapplicationhasmadeanattempttoloadtheCruntimelibraryincorrectly.我有一个可执行文件list。按照本论坛其他地方的建议,我还在文件夹中有msvc*.dll的list。那么,为什么除了它应该在的地方以外,它